SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 45263: Multiple queries might be generated for SAS® OLAP Server queries using the NONEMPTY CROSSJOIN optimization

DetailsAboutRate It

Consider the following query, which uses the NONEMPTY CROSSJOIN optimization for the SAS OLAP Server:

SELECT MEASURES ON COLUMNS, NON EMPTY CROSSJOIN( { [TIME].[All TIME].[1999].[Q4, 1999].[Oct,1999]} , { [PRODUCT].[brand].MEMBERS} ) ON ROWS FROM [sales]

This query creates the following four subqueries:

  1. to determine the non-emptiness of the [Time] set.
  2. to determine the non-emptiness of the [Product] set.
  3. to determine the non-emptiness of the combined [Time] * [Product] sets within the context determined by them.
  4. to retrieve the final data in the result set.

If you have a high cardinality in either of these sets, you might also notice that there are two long lists of members in the WHERE clause in the third and fourth queries. If you are at the top level of a hierarchy, those lists are simple IN() lists. If you are not at the top level, then the WHERE clause uses AND and OR.

Executing multiple queries, especially in constructing the long lists for the WHERE clause, could increase the response time to complete the queries.



Operating System and Release Information

Product FamilyProductSystemSAS Release
ReportedFixed*
SAS SystemSAS OLAP Serverz/OS9.1 TS1M29.4 TS1M0
OpenVMS Alpha9.1 TS1M29.4 TS1M0
Tru64 UNIX9.1 TS1M29.4 TS1M0
HP-UX IPF9.1 TS1M29.4 TS1M0
Linux9.1 TS1M29.4 TS1M0
64-bit Enabled Solaris9.1 TS1M29.4 TS1M0
64-bit Enabled AIX9.1 TS1M29.4 TS1M0
64-bit Enabled HP-UX9.1 TS1M29.4 TS1M0
Microsoft Windows XP Professional9.1 TS1M29.4 TS1M0
Microsoft Windows Server 2003 Enterprise Edition9.1 TS1M29.4 TS1M0
Microsoft Windows Server 2003 Standard Edition9.1 TS1M29.4 TS1M0
Microsoft Windows Server 2003 Datacenter Edition9.1 TS1M29.4 TS1M0
Microsoft Windows NT Workstation9.1 TS1M2
Microsoft Windows 2000 Server9.1 TS1M2
Microsoft Windows 2000 Professional9.1 TS1M2
Microsoft Windows 2000 Datacenter Server9.1 TS1M2
Microsoft Windows Server 2003 Enterprise 64-bit Edition9.1 TS1M29.4 TS1M0
Microsoft Windows 2000 Advanced Server9.1 TS1M2
Microsoft Windows Server 2003 Datacenter 64-bit Edition9.1 TS1M29.4 TS1M0
Microsoft® Windows® for 64-Bit Itanium-based Systems9.1 TS1M29.4 TS1M0
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.